class: center, middle, inverse, title-slide .title[ # Cargando los datos a Rstudio ] .subtitle[ ## Dirección Nacional de Estadística Criminal - Ministerio de Seguridad ] --- <style type="text/css"> .remark-slide-content { font-size: 25px; padding: 1em 1em 1em 1em; } <style type="text/css"> .remark-code{ line-height: 1.5; font-size: 80% } @media print { .has-continuation { display: block; } } </style> # Hoja de ruta <br><br> ## ✔️ lectura / escritura ### Paquetes para importar datos: - 📦 _{readr}_ - 📦 _{readxl}_ - 📦 _{haven}_ --- # Lectura de archivos ## Funciones para importar datos: .pull-left[ 📦_{readr}_: - 🔧 `read_csv()` - 🔧️ `read_table()` <br> 📦 _{readxl}_: - 🔧 `read_xlsx()` ] .pull-right[ 📦_{haven}_: - 🔧 `read_sav()` - 🔧 `read_dat()` - 🔧 `read_sas()` ] --- # Importar una base de datos ### CASO: - Queremos traer la base _SNIC - Departamentos. Mensual. Años 2017-2020_ de la página [Bases de datos de estadísticas criminales](https://www.argentina.gob.ar/seguridad/estadisticascriminales/bases-de-datos). --- # Importación: PLAN A ### **Paso 1:** Descargar la base y guardarla en una carpeta de la computadora -- ### **Paso 2:** Según la extensión del archivo (*nombre_del_archivo`.algo`*), elegir la función en r para importar: -- ```r ### Cargo la librería library(readr) ### Importo base de datos base_snic <- read`_csv`(file = "ruta_del_archivo/nombre_del_archico`.csv`") ``` -- ***tip:*** _si estás trabajando en windows, la barra que separa cada carpeta de una ruta que pegues será `\` (ej: ruta_archivo\archivo.csv), pero la que acepta R es `/` (ej: ruta_archivo/archivo.csv)_ --- # PLAN B ### Paso 1: Ir a la página donde se encuentra la base y copiar el enlace de descarga: <img src="data:image/png;base64,#img/enlace_web_base.png" width="1531" /> --- # PLAN B ### Paso 2: Copiar el enlace entre comillas, dentro del parámetro `file = `: ```r base_snic <- read_csv2(file = "https://estadisticascriminales.minseg.gob.ar/datos/snic-departamentos-mes-sexo.csv") ``` --- # PLAN C ### Paso 1: En la pestaña **Environment --> Import Dataset**, elegimos la opción acorde a la extensión del archivo. <img src="data:image/png;base64,#img/import_1.png" width="80%" style="display: block; margin: auto;" /> --- # PLAN C ### Paso 2: En la ventana, definimos la carpeta donde se encuentra el archivo descargado: <img src="data:image/png;base64,#img/import_2.png" width="80%" style="display: block; margin: auto;" /> --- # PLAN C ### Paso 3a: En caso de un archivo _.csv_ (*comma separated value*), debemos definir el separador de columnas del archivo, en este caso, el valor `;` (*punto y coma*): <img src="data:image/png;base64,#img/import_3.png" width="80%" style="display: block; margin: auto;" /> --- # PLAN C ### Paso 3b: Al configurar el separador de columnas, veremos cómo responde el programa y nos estructura la base en filas y columnas: <img src="data:image/png;base64,#img/import_4.png" width="80%" style="display: block; margin: auto;" /> --- # PLAN C ### Paso 4: Aceptamos la configuración y veremos en nuestro ambiente un objeto nuevo, que contiene la base: <img src="data:image/png;base64,#img/import_5.png" width="80%" style="display: block; margin: auto;" /> --- # Chequeamos la operación con alguna función ```r `head(base_snic)` ``` ``` # A tibble: 6 x 13 anio provinci~1 provi~2 dpto_id dpto_~3 codig~4 codig~5 mes victi~6 victi~7 <dbl> <dbl> <chr> <chr> <chr> <chr> <chr> <dbl> <dbl> <dbl> 1 2017 2 Ciudad~ 02001 Comuna~ 1 Homici~ 1 1 0 2 2017 2 Ciudad~ 02001 Comuna~ 1 Homici~ 2 2 0 3 2017 2 Ciudad~ 02001 Comuna~ 1 Homici~ 3 2 0 4 2017 2 Ciudad~ 02001 Comuna~ 1 Homici~ 4 1 2 5 2017 2 Ciudad~ 02001 Comuna~ 1 Homici~ 5 5 0 6 2017 2 Ciudad~ 02001 Comuna~ 1 Homici~ 6 1 1 # ... with 3 more variables: victimas_no_consta <dbl>, cantidad_victimas <dbl>, # cantidad_hechos <dbl>, and abbreviated variable names 1: provincia_id, # 2: provincia_nombre, 3: dpto_nombre, 4: codigo_delito_snic_id, # 5: codigo_delito_snic_nombre, 6: victimas_masculino, 7: victimas_femenino # i Use `colnames()` to see all variable names ``` --- # Chequeamos la operación con alguna función ```r `str(base_snic)` ``` ``` spec_tbl_df [1,390,553 x 13] (S3: spec_tbl_df/tbl_df/tbl/data.frame) $ anio : num [1:1390553] 2017 2017 2017 2017 2017 ... $ provincia_id : num [1:1390553] 2 2 2 2 2 2 2 2 2 2 ... $ provincia_nombre : chr [1:1390553] "Ciudad Autónoma de Buenos Aires" "Ciudad Autónoma de Buenos Aires" "Ciudad Autónoma de Buenos Aires" "Ciudad Autónoma de Buenos Aires" ... $ dpto_id : chr [1:1390553] "02001" "02001" "02001" "02001" ... $ dpto_nombre : chr [1:1390553] "Comuna 1" "Comuna 1" "Comuna 1" "Comuna 1" ... $ codigo_delito_snic_id : chr [1:1390553] "1" "1" "1" "1" ... $ codigo_delito_snic_nombre: chr [1:1390553] "Homicidios dolosos" "Homicidios dolosos" "Homicidios dolosos" "Homicidios dolosos" ... $ mes : num [1:1390553] 1 2 3 4 5 6 7 8 9 10 ... $ victimas_masculino : num [1:1390553] 1 2 2 1 5 1 2 2 1 2 ... $ victimas_femenino : num [1:1390553] 0 0 0 2 0 1 0 0 0 1 ... $ victimas_no_consta : num [1:1390553] 0 0 0 0 0 0 0 0 0 0 ... $ cantidad_victimas : num [1:1390553] 1 2 2 3 5 2 2 2 1 3 ... $ cantidad_hechos : num [1:1390553] 1 2 2 3 5 2 2 2 1 3 ... - attr(*, "spec")= .. cols( .. anio = col_double(), .. provincia_id = col_double(), .. provincia_nombre = col_character(), .. dpto_id = col_character(), .. dpto_nombre = col_character(), .. codigo_delito_snic_id = col_character(), .. codigo_delito_snic_nombre = col_character(), .. mes = col_double(), .. victimas_masculino = col_double(), .. victimas_femenino = col_double(), .. victimas_no_consta = col_double(), .. cantidad_victimas = col_double(), .. cantidad_hechos = col_double() .. ) - attr(*, "problems")=<externalptr> ```